A Distributed Logic Programming Language and its Implementation on Transputer Networks

نویسندگان

  • José A. Cardoso Cunha
  • Pedro A. Duarte Medeiros
  • Luís M. Pereira
چکیده

Currently there is a trend towards the development of programming tools and mechanisms for the support of heterogeneous multi-agent systems on paralell computer architectures. This paper presents a contribution to this area, as far as logic programming on a distributed execution environment is concerned. We discuss the main issues on the design and implementation of the logic programming language Delta Prolog [2] [3] [6] [7] [11], extending Prolog with constructs for concurrency and communication. The work described is one of the research components of a project on the development of mechanisms for parallel logic programming support on parallel architectures, currently running in this University [8]. 1. Delta Prolog: the language In this section a simple example is used to review the main language constructs, along the following relevant dimensions: specifications of sequential and concurrent composition of Prolog goals; communication and synchronization between processes; local non-determinism (i.e. within each Prolog process) and global (or external) non-determinism (allowing the choice among multiple communication alternatives). 1.1 _-Prolog programs A _-Prolog program is a sequence of clauses of the form: H :G1,...,Gn. (n_0). The comma is the sequential composition operator. Declaratively, the truth of goals in _-Prolog is orderdependant, so that H is true if G1,...,Gn are true in succession. Whereas H is a Prolog goal, each Gi may be either a Prolog or a _-Prolog goal. A _-Prolog goal is either a split goal (for parallelism), an event goal (for inter-process communication) or a choice goal (for external non-determinism). A _-Prolog program without _-Prolog goals is and executes like a Prolog program, so _-Prolog is an extension to Prolog. The programming model relies on the programmer to specify the sequentiality constraints and the desirable parallelism existing in each problem (using the comma and the split operators), and the corresponding communication schemes (through event and choice goals). The paper assumes some knowledge of logic programming languages, such as Prolog. An informal introduction to the language constructs follows. 1.2 Illustration of the main language constructs Published in the Procs. of 12th Technical Meeting of Occam User Group, Exeter, IOS Amsterdam, April 1990.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Delta Prolog: a Distributed Logic Programming Language and Its Implementation on Distributed Memory Multiprocessors

Delta Prolog is a logic programming language extending Prolog with constructs for sequential and parallel composition of goals, interprocess communication and synchronization , and external non-determinism. We present sequential and parallel search strategies for the language, based on the notion of derivations space. They rely upon distributed backtracking, a mechanism supporting the coordinat...

متن کامل

An operating environment for control systems on transputer networks

This article describes an operating environment for control systems. This environment contains the basic layers of a distributed operating system. The design of this operating environment is based on the requirements demanded by controllers which can be found in complex control systems. Due to the nature of real-time control systems, special attention has to be payed to an efficient implementat...

متن کامل

Design and PLC Implementation for Speed Control of DC Motor using Fuzzy Logic

In this article, a speed control of DC motor is designed and illustrated using fuzzy logic-based programmable logic controller (PLC). The DC motor is an attractive part of electrical equipment in many industrial applications requiring variable speed and load specifications due to its ease of controllability. The designed system is consisted of three main parts including programmable logic contr...

متن کامل

Parallel Grr Obner Basis Computation in Kmaplek

This paper presents a new system for parallel symbolic computation called kMAPLEk (speak: parallel Maple), in which logic programming provides paralle-lism and imperative programming provides eeciency. The system is built as a combination between the parallel declarative programming language Strand and the sequential computer algebra system Maple. We describe a novel approach to the paralleliza...

متن کامل

A PRAM oriented programming system

A PRAM-oriented programming language called 11 and its implementation on transputer networks are presented. The approach taken is a compromise between efficiency and simplicity. The 11 language has been conceived as a tool for the study, design, analysis, verification and teaching of parallel algorithms. A method for the complexity analysis of 11 programs called PRSW is introduced. The 11 compi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1990